home *** CD-ROM | disk | FTP | other *** search
- #!------------------------------------------------------------------------------
- #!
- #! Modifications to standard CW Template files: FILECTRL.TPW
- #! FIELD.TPW
- #! STANDARD.TPW
- #!
- #!------------------------------------------------------------------------------
- #!
- #!
- #!
- #!------------------------------------------------------------------------------
- #! Modified FILECTRL.TPW
- #!------------------------------------------------------------------------------
- #GROUP(%FileControlInitialize)
- #IF(%Primary)
- #ADD(%ProcFilesUsed,%Primary)
- #ENDIF
- #FOR(%Secondary)
- #ADD(%ProcFilesUsed,%Secondary)
- #ENDFOR
- #FOR(%OtherFiles)
- #ADD(%ProcFilesUsed,%OtherFiles)
- #ENDFOR
- #!------------------------------------------------------------------------------
- #GROUP(%FileControlUpdate)
- #FOR(%ProcFilesUsed)
- #ADD(%ModuleFilesUsed,%ProcFilesUsed)
- #ENDFOR
- #!------------------------------------------------------------------------------
- #GROUP(%FileControlOpen)
- #EMBED(%BeforeFileOpen,'Beginning of Procedure, Before Opening Files')
- #FOR(%ProcFilesUsed)
- #INSERT(%FileControlOpenFile,%ProcFilesUsed)
- #ENDFOR
- #EMBED(%AfterFileOpen,'Beginning of Procedure, After Opening Files')
- #!------------------------------------------------------------------------------
- #GROUP(%FileControlOpenFile,%CurrentFile)
- #DECLARE(%CheckOpenParameters)
- #FIX(%File,%CurrentFile)
- #CASE(%OverrideOpenMode)
- #OF('Share')
- #SET(%CheckOpenParameters,',42h')
- #OF('Open')
- #SET(%CheckOpenParameters,',22h')
- #OF('Other')
- #CASE(%OverrideOtherAccess)
- #OF('Deny None')
- #SET(%CheckOpenParameters,'+DenyNone')
- #OF('Deny Read')
- #SET(%CheckOpenParameters,'+DenyRead')
- #OF('Deny Write')
- #SET(%CheckOpenParameters,'+DenyWrite')
- #OF('Deny All')
- #SET(%CheckOpenParameters,'+DenyAll')
- #OF('Any Access')
- #SET(%CheckOpenParameters,'+AnyAccess')
- #ENDCASE
- #CASE(%OverrideUserAccess)
- #OF('Read/Write')
- #SET(%CheckOpenParameters,',ReadWrite' & %CheckOpenParameters)
- #OF('ReadOnly')
- #SET(%CheckOpenParameters,',ReadOnly' & %CheckOpenParameters)
- #OF('WriteOnly')
- #SET(%CheckOpenParameters,',WriteOnly' & %CheckOpenParameters)
- #ENDCASE
- #ENDCASE
- #CASE(%OverrideCreate)
- #OF('Use File Setting')
- #IF(%FileCreate)
- #SET(%CheckOpenParameters,',1' & %CheckOpenParameters)
- #ELSE
- #SET(%CheckOpenParameters,',0' & %CheckOpenParameters)
- #ENDIF
- #OF('Create File')
- #SET(%CheckOpenParameters,',1' & %CheckOpenParameters)
- #OF('Do Not Create File')
- #SET(%CheckOpenParameters,',0' & %CheckOpenParameters)
- #ELSE
- #CASE(%DefaultCreate)
- #OF('Use File Setting')
- #IF(%FileCreate)
- #SET(%CheckOpenParameters,',1' & %CheckOpenParameters)
- #ELSE
- #SET(%CheckOpenParameters,',0' & %CheckOpenParameters)
- #ENDIF
- #OF('Create All')
- #SET(%CheckOpenParameters,',1' & %CheckOpenParameters)
- #OF('Create None')
- #SET(%CheckOpenParameters,',0' & %CheckOpenParameters)
- #ENDCASE
- #ENDCASE
- #SET(%CheckOpenParameters,%File & %CheckOpenParameters)
- #CASE(%OverrideCloseFile)
- #OF('Close the File')
- IF %File::Used = 0
- CheckOpen(%CheckOpenParameters)
- END
- %File::Used += 1
- #OF('Keep the File Open')
- CheckOpen(%CheckOpenParameters)
- #ELSE
- #IF(%DefaultCloseFile ='Close the File')
- IF %File::Used = 0
- CheckOpen(%CheckOpenParameters)
- END
- %File::Used += 1
- #ELSE
- CheckOpen(%CheckOpenParameters)
- #ENDIF
- #ENDCASE
- #!------------------------------------------------------------------------------
- #GROUP(%FileControlClose)
- #EMBED(%BeforeFileClose,'End of Procedure, Before Closing Files')
- #FOR(%ProcFilesUsed)
- #INSERT(%FileControlCloseFile,%ProcFilesUsed)
- #ENDFOR
- #EMBED(%AfterFileClose,'End of Procedure, After Closing Files')
- #!------------------------------------------------------------------------------
- #GROUP(%FileControlCloseFile,%CurrentFile)
- #FIX(%File,%CurrentFile)
- #CASE(%OverrideCloseFile)
- #OF('Close the File')
- %File::Used -= 1
- IF %File::Used = 0 THEN CLOSE(%File).
- #OF('Keep the File Open')
- IF %File::Used > 0
- %File::Used -= 1
- END
- #ELSE
- #IF(%DefaultCloseFile ='Close the File')
- %File::Used -= 1
- IF %File::Used = 0 THEN CLOSE(%File).
- #ENDIF
- #ENDCASE
- #!
- #!
- #!
- #!------------------------------------------------------------------------------
- #! Modified FIELD.TPW
- #!------------------------------------------------------------------------------
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardButtonMenuPrompt)
- #FIELD WHERE(%ControlType = 'BUTTON' OR (%ControlType = 'ITEM' AND NOT EXTRACT(%ControlStatement,'SEPARATOR')))
- #BOXED('Menu/Button Control Prompts')
- #PROMPT('When Pressed',DROP('No Special Action|Call a Procedure|Run a Program')),%ButtonAction,DEFAULT('No Special Action')
- #DISPLAY('')
- #BOXED('Program Definition'),WHERE(%ButtonAction = 'Run a Program'),AT(,20),CLEAR
- #PROMPT('Program Name:',@S40),%ButtonRunName,REQ
- #PROMPT('Parameters:',@s255),%ButtonRunParameters
- #ENDBOXED
- #BOXED('Procedure Definition'),WHERE(%ButtonAction = 'Call a Procedure'),AT(,20)
- #ENABLE(%ButtonAction = 'Call a Procedure'),CLEAR
- #PROMPT('Procedure Name:',PROCEDURE),%ButtonProcedure,REQ
- #PROMPT('Initiate Thread',CHECK),%ButtonThread
- #ENDENABLE
- #ENABLE(%ButtonThread = %True)
- #PROMPT('Thread Stack:',SPIN(@n7,5000,64000,500)),%ButtonThreadStack,DEFAULT(25000)
- #ENDENABLE
- #ENABLE(%ButtonThread = %False),CLEAR
- #PROMPT('Parameters:',@s255),%ButtonParameters
- #PROMPT('Requested File Action:',DROP('None|Insert|Change|Delete|Select')),%ButtonRequest,DEFAULT('None')
- #ENDENABLE
- #ENDBOXED
- #ENDBOXED
- #ENDFIELD
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardButtonMenuHandling)
- #IF(%ControlEvent = 'Accepted')
- #IF(%ButtonAction = 'Call a Procedure')
- #IF(%ButtonProcedure)
- #IF(%ButtonThread)
- START(%ButtonProcedure,%ButtonThreadStack)
- #ELSE
- #IF(%ButtonRequest AND %ButtonRequest <> 'None')
- #SET(%ValueConstruct,%ButtonRequest & 'Record')
- GlobalRequest = %ValueConstruct
- #ENDIF
- %ButtonProcedure %ButtonParameters
- #ENDIF
- #ENDIF
- LocalRequest = OriginalRequest
- DO RefreshWindow
- #ELSIF(%ButtonAction = 'Run a Program')
- RUN('%ButtonRunName %ButtonRunParameters')
- ForceRefresh = True
- LocalRequest = OriginalRequest
- DO RefreshWindow
- #ENDIF
- #ENDIF
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardEntryPrompt)
- #FIELD WHERE(%ControlType = 'ENTRY')
- #BOXED('Entry Control Prompts')
- #BOXED('When the Control Is Selected')
- #PROMPT('Lookup Key',KEY),%PreLookupKey
- #ENABLE(%PreLookupKey),CLEAR
- #PROMPT('Lookup Field',COMPONENT(%PreLookupKey)),%PreLookupField,REQ
- #PROMPT('Lookup Procedure',PROCEDURE),%PreLookupProcedure,REQ
- #ENDENABLE
- #PROMPT('Advanced...',EMBEDBUTTON(%ControlEventHandling,%Control,'Selected')),AT(100)
- #ENDBOXED
- #BOXED('When the Control Is Accepted')
- #PROMPT('Lookup Key',KEY),%PostLookupKey
- #ENABLE(%PostLookupKey),CLEAR
- #PROMPT('Lookup Field',COMPONENT(%PostLookupKey)),%PostLookupField,REQ
- #PROMPT('Lookup Procedure',PROCEDURE),%PostLookupProcedure,REQ
- #ENDENABLE
- #PROMPT('Advanced...',EMBEDBUTTON(%ControlEventHandling,%Control,'Accepted')),AT(100)
- #ENDBOXED
- #ENDBOXED
- #ENDFIELD
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardEntryHandling)
- #CASE(%ControlEvent)
- #OF('Selected')
- #IF(%PreLookupKey)
- #FIND(%Key,%PreLookupKey)
- #IF(%Key)
- %PreLookupField = %ControlUse
- GET(%File,%Key)
- IF ERRORCODE()
- GlobalRequest = SelectRecord
- %PreLookupProcedure
- LocalResponse = GlobalResponse
- IF LocalResponse = RequestCompleted
- %ControlUse = %PreLookupField
- DISPLAY(%Control)
- END
- END
- LocalRequest = OriginalRequest
- #ENDIF
- #ENDIF
- #OF('Accepted')
- #IF(%PostLookupKey)
- #FIND(%Key,%PostLookupKey)
- #IF(%Key)
- %PostLookupField = %ControlUse
- GET(%File,%Key)
- IF ERRORCODE()
- GlobalRequest = SelectRecord
- %PostLookupProcedure
- LocalResponse = GlobalResponse
- IF LocalResponse = RequestCompleted
- %ControlUse = %PostLookupField
- DISPLAY(%Control)
- END
- END
- LocalRequest = OriginalRequest
- #ENDIF
- #ENDIF
- #ENDCASE
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardCheckBoxPrompt)
- #FIELD WHERE(%ControlType = 'CHECK')
- #BOXED('Checkbox Control Prompts')
- #BOXED('When the Checkbox is Checked')
- #BUTTON('Assign Values'),MULTI(%CheckedAssigns,%CheckedAssignVar & ' = ' & %CheckedAssignValue),AT(20,,160),HLP('~FieldCheckBoxAssignValuesChecked')
- #DISPLAY('Values to assign when the check box is checked')
- #DISPLAY('')
- #PROMPT('Variable to Assign',FIELD),%CheckedAssignVariable,REQ
- #PROMPT('Value to Assign',@S40),%CheckedAssignValue,REQ
- #ENDBUTTON
- #BUTTON('Hide/Unhide Controls'),MULTI(%CheckedHides,%CheckedControl & ' - ' & %CheckedControlAction),AT(20,,160),HLP('~FieldCheckBoxHideControlsValuesChecked')
- #DISPLAY('Controls to hide/unhide when the check box is checked')
- #DISPLAY('')
- #PROMPT('Control to hide/unhide:',CONTROL),%CheckedControl,REQ
- #PROMPT('Hide or unhide control',DROP('Hide|Unhide')),%CheckedControlAction,REQ
- #ENDBUTTON
- #ENDBOXED
- #BOXED('When the Checkbox is Unchecked')
- #BUTTON('Assign Values'),MULTI(%UncheckedAssigns,%UncheckedAssignVar & ' = ' & %UncheckedAssignValue),AT(20,,160),HLP('~FieldCheckBoxAssignValuesUnchecked')
- #DISPLAY('Values to assign when the check box is unchecked')
- #DISPLAY('')
- #PROMPT('Variable to Assign',FIELD),%UncheckedAssignVariable,REQ
- #PROMPT('Value to Assign',@S40),%UncheckedAssignValue,REQ
- #ENDBUTTON
- #BUTTON('Hide/Unhide Controls'),MULTI(%UnCheckedHides,%UnCheckedControl & ' - ' & %UnCheckedControlAction),AT(20,,160),HLP('~FieldCheckBoxHideControlsValuesUnchecked')
- #DISPLAY('Controls to hide/unhide when the check box is unchecked')
- #DISPLAY('')
- #PROMPT('Control to hide/unhide:',CONTROL),%UnCheckedControl,REQ
- #PROMPT('Hide or unhide control',DROP('Hide|Unhide')),%UnCheckedControlAction,REQ
- #ENDBUTTON
- #ENDBOXED
- #ENDBOXED
- #ENDFIELD
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardCheckBoxHandling)
- #IF(%ControlEvent='Accepted')
- #IF(ITEMS(%CheckedAssigns) OR ITEMS(%CheckedHides))
- IF %ControlUse
- #FOR(%CheckedAssigns),WHERE(%CheckedAssignVariable)
- %CheckedAssignVariable = %CheckedAssignValue
- #ENDFOR
- #FOR(%CheckedHides)
- #IF(%CheckedControlAction='Hide')
- %CheckedControl{Prop:Hide} = TRUE
- #ELSE
- %CheckedControl{Prop:Hide} = FALSE
- #ENDIF
- #ENDFOR
- END
- #ENDIF
- #IF(ITEMS(%UncheckedAssigns) OR ITEMS(%UncheckedHides))
- IF ~%ControlUse
- #FOR(%UncheckedAssigns),WHERE(%UncheckedAssignVariable)
- %UncheckedAssignVariable = %UncheckedAssignValue
- #ENDFOR
- #FOR(%UncheckedHides)
- #IF(%UncheckedControlAction='Hide')
- %UncheckedControl{Prop:Hide} = TRUE
- #ELSE
- %UncheckedControl{Prop:Hide} = FALSE
- #ENDIF
- #ENDFOR
- END
- #ENDIF
- #ENDIF
- #!------------------------------------------------------------------------------
- #GROUP(%FieldTemplateStandardHandling)
- #CASE(%ControlType)
- #OF('BUTTON')
- #INSERT(%FieldTemplateStandardButtonMenuHandling)
- #OF('ENTRY')
- #INSERT(%FieldTemplateStandardEntryHandling)
- #OF('CHECK')
- #INSERT(%FieldTemplateStandardCheckboxHandling)
- #OF('BUTTON')
- #INSERT(%FieldTemplateStandardButtonMenuHandling)
- #ELSE
- #IF(%ControlMenu)
- #INSERT(%FieldTemplateStandardButtonMenuHandling)
- #ENDIF
- #ENDCASE
- #!
- #!
- #!
- #!------------------------------------------------------------------------------
- #! Modified STANDARD.TPW
- #!------------------------------------------------------------------------------
- #GROUP(%StandardSecondaryLookups),AUTO
- #DECLARE(%MatchedKey)
- #FOR(%Secondary)
- #FIX(%File,%Secondary)
- #FIX(%Relation,%SecondaryTo)
- #IF(%FileRelationType = '1:MANY')
- #FOR(%RelationKeyField),WHERE(%RelationKeyFieldLink AND %RelationKeyField)
- %RelationKeyFieldLink = %RelationKeyField #<! Assign linking field value
- #ENDFOR
- GET(%File,%FileKey) #<! Lookup record
- IF ERRORCODE() THEN CLEAR(%FilePrefix:Record).#<! Clear record if unsuccessful
- #ELSIF(%FileRelationType = 'MANY:1')
- #SET(%MatchedKey,%True)
- #SUSPEND
- #FOR(%RelationKeyField)
- #IF(%RelationKeyFieldLink AND %RelationKeyField)
- #?%RelationKeyFieldLink = %RelationKeyField #<! Assign linking field value
- #ELSE
- #SET(%MatchedKey,%False)
- #ENDIF
- #ENDFOR
- #IF(%MatchedKey)
- GET(%File,%FileKey) #<! Lookup record
- IF ERRORCODE() THEN CLEAR(%FilePrefix:Record).#<! Clear record if unsuccessful
- #ENDIF
- #RESUME
- #ENDIF
- #ENDFOR
- #EMBED(%LookupRelated,'Lookup Related Records'),HLP('EmbedLookupRelated')
- #!------------------------------------------------------------------------------
- #GROUP(%StandardWindowClosing)
- #EMBED(%BeforeWindowClosing,'Before Closing the Window')
- IF WindowOpened
- #IF(%INIActive AND %INISaveWindow)
- INISaveWindow('%Procedure','%INIFileName')
- #ENDIF
- CLOSE(%Window)
- END
- #EMBED(%AfterWindowClosing,'After Closing the Window')
- #!------------------------------------------------------------------------------
- #GROUP(%StandardControlHandling)
- #FOR(%Control),WHERE(%Control)
- #CASE(%ControlTemplate)
- #OF('BrowseBox(ToolCraft)')
- #OROF('DropComboBrowse(ToolCraft)')
- #SUSPEND
- #?OF %Control
- #SUSPEND
- #?CASE EVENT()
- #FOR(%ControlEvent)
- #SUSPEND
- #?OF EVENT:%ControlEvent
- #EMBED(%ControlPreEventHandling,'Control Event Handling, Before Generated Code'),%Control,%ControlEvent
- #INSERT(%FieldTemplateStandardHandling)
- #EMBED(%ControlEventHandling,'Internal Control Event Handling'),%Control,%ControlEvent,HIDE
- #RESUME
- #ENDFOR
- #SUSPEND
- #?ELSE
- #EMBED(%ControlOtherEventHandling,'Other Control Event Handling'),%Control
- #RESUME
- #?END
- #RESUME
- #EMBED(%CallBrowseListRoutine,'Control Pre-Event Handling'),%Control,HIDE
- #SUSPEND
- #?CASE EVENT()
- #FOR(%ControlEvent)
- #SUSPEND
- #?OF EVENT:%ControlEvent
- #EMBED(%ControlPostEventHandling,'Control Event Handling, After Generated Code'),%Control,%ControlEvent
- #RESUME
- #ENDFOR
- #?END
- #RESUME
- #RESUME
- #ELSE
- #SUSPEND
- #?OF %Control
- #?CASE EVENT()
- #FOR(%ControlEvent)
- #SUSPEND
- #?OF EVENT:%ControlEvent
- #EMBED(%ControlPreEventHandling,'Control Event Handling, Before Generated Code'),%Control,%ControlEvent
- #INSERT(%FieldTemplateStandardHandling)
- #EMBED(%ControlEventHandling,'Internal Control Event Handling'),%Control,%ControlEvent,HIDE
- #EMBED(%ControlPostEventHandling,'Control Event Handling, After Generated Code'),%Control,%ControlEvent
- #RESUME
- #ENDFOR
- #SUSPEND
- #?ELSE
- #EMBED(%ControlOtherEventHandling,'Other Control Event Handling'),%Control
- #RESUME
- #?END
- #RESUME
- #ENDCASE
- #ENDFOR
- #!------------------------------------------------------------------------------
- #GROUP(%StandardWindowHandling)
- #FOR(%WindowEvent)
- #SUSPEND
- #?OF EVENT:%WindowEvent
- #EMBED(%WindowEventHandling,'Window Event Handling'),%WindowEvent
- #CASE(%WindowEvent)
- #OF('OpenWindow')
- IF NOT WindowInitialized
- DO InitializeWindow
- WindowInitialized = True
- END
- #IF(%FirstFieldToSelect)
- SELECT(%FirstFieldToSelect)
- #ELSE
- SELECT(FIRSTFIELD())
- #ENDIF
- #OF('GainFocus')
- IF NOT WindowInitialized
- WindowInitialized = True
- DO InitializeWindow
- ELSE
- ForceRefresh = True
- DO RefreshWindow
- END
- #ENDCASE
- #EMBED(%PostWindowEventHandling,'Window Event Handling, after generated code'),%WindowEvent
- #RESUME
- #ENDFOR
- #SUSPEND
- #?ELSE
- #EMBED(%WindowOtherEventHandling,'Other Window Event Handling')
- #RESUME
- #!------------------------------------------------------------------------------
- #GROUP(%StandardFormula,%RequestedClass)
- #FOR(%Formula),WHERE(%FormulaClass = %RequestedClass)
- #INSERT(%ExpandFormula,1)
- #ENDFOR
- #!------------------------------------------------------------------------------
- #GROUP(%ExpandFormula,%CurrentElement)
- #DECLARE(%LastElement)
- #SET(%LastElement,INSTANCE(%FormulaExpression))
- #SELECT(%FormulaExpression,%CurrentElement)
- #CASE(%FormulaExpressionType)
- #OF('=')
- #IF(%FormulaExpression)
- %Formula = %FormulaExpression
- #ELSE
- CLEAR(%Formula)
- #ENDIF
- #OF('IF')
- IF (%FormulaExpression)
- #INSERT(%ExpandFormula,%FormulaExpressionTrue)
- ELSE
- #INSERT(%ExpandFormula,%FormulaExpressionFalse)
- END
- #OF('CASE')
- CASE (%FormulaExpression)
- #INSERT(%ExpandFormulaCase,%FormulaExpressionCase)
- END
- #ENDCASE
- #SELECT(%FormulaExpression,%LastElement)
- #!------------------------------------------------------------------------------
- #GROUP(%ExpandFormulaCase,%CurrentElement)
- #SELECT(%FormulaExpression,%CurrentElement)
- #LOOP WHILE(%CurrentElement)
- #IF(%CurrentElement=0)
- #BREAK
- #ENDIF
- #SET(%CurrentElement,%FormulaExpressionCase)
- OF %FormulaExpression
- #INSERT(%ExpandFormula,%FormulaExpressionOf)
- #SELECT(%FormulaExpression,%FormulaExpressionCase)
- #ENDLOOP
- #!------------------------------------------------------------------------------
- #GROUP(%StandardThreadInitialize,%ThreadProcedure,%InitThreadName)
- #IF(%InitThreadName)
- #FIND(%ThreadName,%InitThreadName)
- #ENDIF
- IF START(%ThreadProcedure).
- #!-------------------------------------------------------------------------
- #GROUP(%StandardWindowGeneration),AUTO
- #MESSAGE('Standard Window Generation',3)
- #DECLARE(%NewWindowStatement)
- #DECLARE(%CurrentOperationMode)
- #DECLARE(%MenuBarFound)
- #DECLARE(%ToolBarFound)
- #EMBED(%DataSectionBeforeWindow,'Data Section, Before Window Declaration')
- #IF(%WindowStatement)
- #IF(SUB(%WindowStatement,1,11)='APPLICATION')
- #SET(%NewWindowStatement,%WindowStatement)
- #ELSIF(%WindowOperationMode='Use WINDOW setting')
- #SET(%NewWindowStatement,%WindowStatement)
- #ELSE
- #SET(%CurrentOperationMode,SUB(%WindowStatement,LEN(%WindowStatement)-3,4))
- #IF(%CurrentOperationMode = ',MDI')
- #IF(%WindowOperationMode = 'MDI')
- #SET(%NewWindowStatement,%WindowStatement)
- #ELSE
- #SET(%NewWindowStatement,SUB(%WindowStatement,1,LEN(%WindowStatement)-4))
- #IF(%WindowOperationMode = 'MODAL')
- #SET(%NewWindowStatement,%NewWindowStatement & ',MODAL')
- #ENDIF
- #ENDIF
- #ELSIF(%CurrentOperationMode = 'ODAL')
- #IF(%WindowOperationMode = 'MODAL')
- #SET(%NewWindowStatement,%WindowStatement)
- #ELSE
- #SET(%NewWindowStatement,SUB(%WindowStatement,1,LEN(%WindowStatement)-6))
- #IF(%WindowOperationMode = 'MDI')
- #SET(%NewWindowStatement,%NewWindowStatement & ',MDI')
- #ENDIF
- #ENDIF
- #ELSE
- #SET(%NewWindowStatement,%WindowStatement)
- #IF(%WindowOperationMode = 'MDI')
- #SET(%NewWindowStatement,%NewWindowStatement & ',MDI')
- #ELSIF(%WindowOperationMode = 'MODAL')
- #SET(%NewWindowStatement,%NewWindowStatement & ',MODAL')
- #ENDIF
- #ENDIF
- #ENDIF
- #IF(EXTRACT(%WindowStatement,'ICON') AND NOT EXTRACT(%WindowStatement,'IMM'))
- #SET(%NewWindowStatement,%NewWindowStatement & ',IMM')
- #ELSIF(EXTRACT(%WindowStatement,'MAX') AND NOT EXTRACT(%WindowStatement,'IMM'))
- #SET(%NewWindowStatement,%NewWindowStatement & ',IMM')
- #ENDIF
- %[20]Window %NewWindowStatement
- #DECLARE(%Indentation,LONG)
- #DECLARE(%TestValue)
- #SET(%Indentation,0)
- #DECLARE(%ControlSourceLine)
- #FOR(%Control),WHERE(%ControlMenu)
- #IF(%ControlIndent<%Indentation)
- #LOOP
- #SET(%Indentation,%Indentation-1)
- %[22+(2*%Indentation)]Null END
- #IF(%ControlIndent=%Indentation)
- #BREAK
- #ENDIF
- #ENDLOOP
- #ENDIF
- #IF(%MenuBarStatement AND NOT %MenuBarFound)
- %[22+(2*%Indentation)]Null %MenuBarStatement
- #SET(%MenuBarFound,%True)
- #SET(%Indentation,%Indentation+1)
- #ENDIF
- #SET(%ControlSourceLine,%ControlStatement)
- %[22+(2*%Indentation)]Null %ControlSourceLine
- #IF(SUB(%ControlSourceLine,1,4)='MENU')
- #SET(%Indentation,%Indentation+1)
- #ENDIF
- #ENDFOR
- #LOOP,WHILE(%Indentation)
- #SET(%Indentation,%Indentation-1)
- %[22+(2*%Indentation)]Null END
- #ENDLOOP
- #FOR(%Control),WHERE(%ControlTool)
- #IF(%ControlIndent<%Indentation)
- #LOOP
- #SET(%Indentation,%Indentation-1)
- %[22+(2*%Indentation)]Null END
- #IF(%ControlIndent=%Indentation)
- #BREAK
- #ENDIF
- #ENDLOOP
- #ENDIF
- #IF(%ToolBarStatement AND NOT %ToolBarFound)
- %[22+(2*%Indentation)]Null %ToolBarStatement
- #SET(%ToolBarFound,%True)
- #SET(%Indentation,%Indentation+1)
- #ENDIF
- #SET(%ControlSourceLine,%ControlStatement)
- #IF(%MessageDescription)
- #IF(%ControlType <> 'STRING')
- #IF(NOT EXTRACT(%ControlStatement,'MSG'))
- #FIND(%Field,%ControlUse)
- #IF(%FieldDescription)
- #SET(%ControlSourceLine,%ControlSourceLine & ',MSG(''' & %FieldDescription & ''')')
- #ENDIF
- #ENDIF
- #ENDIF
- #ENDIF
- %[22+(2*%Indentation)]Null %ControlSourceLine
- #IF(SUB(%ControlSourceLine,1,6)='OPTION')
- #SET(%Indentation,%Indentation+1)
- #ELSIF(SUB(%ControlSourceLine,1,5)='GROUP')
- #SET(%Indentation,%Indentation+1)
- #ELSIF(SUB(%ControlSourceLine,1,5)='SHEET')
- #SET(%Indentation,%Indentation+1)
- #ELSIF(SUB(%ControlSourceLine,1,3)='TAB')
- #SET(%Indentation,%Indentation+1)
- #ENDIF
- #ENDFOR
- #LOOP,WHILE(%Indentation)
- #SET(%Indentation,%Indentation-1)
- %[22+(2*%Indentation)]Null END
- #ENDLOOP
- #FOR(%Control),WHERE(NOT %ControlMenu AND NOT %ControlTool)
- #IF(%ControlIndent<%Indentation)
- #LOOP
- #SET(%Indentation,%Indentation-1)
- %[22+(2*%Indentation)]Null END
- #IF(%ControlIndent=%Indentation)
- #BREAK
- #ENDIF
- #ENDLOOP
- #ENDIF
- #SET(%ControlSourceLine,%ControlStatement)
- #CASE(%ControlTemplate)
- #OF('BrowseBox(ToolCraft)')
- #SET(%ValueConstruct,INSTRING(',FORMAT(',%ControlSourceLine,1,1))
- #IF(%ValueConstruct)
- #SET(%ControlSourceLine,SUB(%ControlSourceLine,1,%ValueConstruct-1) & ',FORMAT(FORMAT:' & %ControlFrom & ':Default)' & SUB(%ControlSourceLine,%ValueConstruct+LEN(EXTRACT(%ControlSourceLine,'FORMAT'))+1,LEN(%ControlSourceLine)))
- #ELSE
- #SET(%ControlSourceLine,%ControlSourceLine & ',FORMAT(FORMAT:' & %ControlFrom & ':Default)')
- #ENDIF
- #OF('AlternateListFormat(ToolCraft)')
- #CYCLE
- #ENDCASE
- #IF(%MessageDescription)
- #IF(%ControlType <> 'STRING')
- #IF(NOT EXTRACT(%ControlStatement,'MSG'))
- #FIND(%Field,%ControlUse)
- #IF(%FieldDescription)
- #SET(%ControlSourceLine,%ControlSourceLine & ',MSG(''' & %FieldDescription & ''')')
- #ENDIF
- #ENDIF
- #ENDIF
- #ENDIF
- %[22+(2*%Indentation)]Null %ControlSourceLine
- #IF(SUB(%ControlSourceLine,1,6)='OPTION')
- #SET(%Indentation,%Indentation+1)
- #ELSIF(SUB(%ControlSourceLine,1,5)='GROUP')
- #SET(%Indentation,%Indentation+1)
- #ELSIF(SUB(%ControlSourceLine,1,5)='SHEET')
- #SET(%Indentation,%Indentation+1)
- #ELSIF(SUB(%ControlSourceLine,1,3)='TAB')
- #SET(%Indentation,%Indentation+1)
- #ELSE
- #IF(NOT %FirstField)
- #SET(%FirstField,%Control)
- #ENDIF
- #SET(%LastField,%Control)
- #ENDIF
- #ENDFOR
- #LOOP,WHILE(%Indentation)
- #SET(%Indentation,%Indentation-1)
- %[22+(2*%Indentation)]Null END
- #ENDLOOP
- %[20]Null END
- #ENDIF
- #EMBED(%DataSectionAfterWindow,'Data Section, After Window Declaration')
-
-